Skip to content

feat: add Docker deployment support#71

Closed
LeoCeasar wants to merge 1 commit intoringhyacinth:masterfrom
LeoCeasar:feat/docker-deployment
Closed

feat: add Docker deployment support#71
LeoCeasar wants to merge 1 commit intoringhyacinth:masterfrom
LeoCeasar:feat/docker-deployment

Conversation

@LeoCeasar
Copy link

Summary

  • Add Dockerfile and docker-compose.yml for containerized deployment
  • Add docker-entrypoint.sh to auto-initialize state.json and join-keys.json on first run
  • Add STAR_OFFICE_DATA_DIR / STAR_OFFICE_MEMORY_DIR env var support in app.py so runtime JSON files are separated from the image via volume mount
  • Update .env.example with MEMORY_HOST_PATH for Docker usage
  • Update README.md with Docker deployment section
  • Add CLAUDE.md with project guidance for Claude Code

Backward compatible: without env vars, DATA_DIR falls back to ROOT_DIR, so existing python3 app.py usage is unchanged.

Test plan

  • docker compose up -d --build builds and starts successfully
  • http://127.0.0.1:19000 loads the office UI
  • POST /set_state via curl updates agent state correctly
  • Container restart preserves state.json and join-keys.json in ./data/
  • Running python3 app.py directly (without Docker) still works as before

🤖 Generated with Claude Code

- Add Dockerfile and docker-compose.yml for containerized deployment
- Add docker-entrypoint.sh to auto-initialize state/join-keys on first run
- Add STAR_OFFICE_DATA_DIR and STAR_OFFICE_MEMORY_DIR env var support in
  app.py so runtime JSON files can be separated from the image via volume mount
- Update .env.example with MEMORY_HOST_PATH for Docker usage
- Update .gitignore to exclude data/ volume directory
- Add .dockerignore to keep image lean
- Update README with Docker deployment section
- Add CLAUDE.md with project guidance for Claude Code
- Add design doc: docs/plans/2026-03-09-docker-deployment-design.md

Backward compatible: without env vars, DATA_DIR falls back to ROOT_DIR
so existing python3 app.py usage is unchanged.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
@ringhyacinth
Copy link
Owner

Thanks a lot for the PR — we really appreciate the work and the thought behind it.

For now, we'd prefer not to maintain multiple distribution variants while the project is still evolving quickly. We expect more core changes and improvements in the near term, and introducing parallel versions at this stage would add extra maintenance, testing, and documentation overhead for us.

That said, we do think the idea has value. Once the main architecture and feature set are more stable, we'd be more open to revisiting a more complete packaged option — likely something along the lines of a full Docker-based edition.

Thanks again for contributing and helping us think ahead. We're going to close this one for now so we can stay focused on the mainline, but we definitely appreciate the direction.

@ringhyacinth
Copy link
Owner

Closing this for now as noted above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants